home *** CD-ROM | disk | FTP | other *** search
Makefile | 1994-11-15 | 5.8 KB | 144 lines | [TEXT/MPS ] |
- #
- # makefile for "myActionAtoms.r", the example for action atoms
- #
- #
- # to build installer script :
- # 1) select "Build" from "Build" menu
- # 2) type script name "myActionAtoms" ( note: ".r" is omitted )
- #
- # to build debug version of installer script :
- # 1) select "Build" from "Build" menu
- # 2) type script name "myActionAtoms.debug" ( note: ".r" is omitted )
- #
- #
- # mark young - 08/17/94
- #
-
- scriptName = myActionAtoms
- debugScriptName = "{scriptName}.debug"
-
- # You may change the following paths as you see fit. Currently all paths
- # are set so that scripts will compile when using the original directory
- # layout from the Installer SDK.
-
- # You may place the ScriptCheck tool in the 'MPW:Tools' directory. Doing this
- # removes the need for the {ScriptCheckDir} variable within the makefile.
- ScriptCheckDir = :::ScriptCheck 4.0.3:
-
- # You may place "InstallerTypes.r" file in the 'MPW:Interfaces:RIncludes:' directory.
- # Doing this removes the need for the {InstallerRIncDir} variable or -i specification
- # for Rez and compile ( C ) commands within the makefile.
- InstallerRIncDir = :::DeveloperInterfaces:RIncludes:
-
- # You may place the contents of the "DeveloperInterfaces:CIncludes:" folder
- # in your 'MPW:Interfaces:CSources' folder. Doing this removes the need for the
- # {InstallerCIncDir} variable within the makefile and the -i option in the compile
- # command line.
- InstallerCIncDir = :::DeveloperInterfaces:CIncludes:
-
- # You may place "Installer Debugger.r" file in the 'MPW:Interfaces:RIncludes:' directory.
- # Doing this removes the need for the {InstallerDebuggerDir} variable within the makefile.
- InstallerDebuggerDir = :::Installer Debugger 4.0:
-
- # • action atom stuff
-
- # You may use this makefile to compile your own action atoms.
- # Just replace the 'ActionAtomFileName<n>' value "myActionAtom_<n>.rsrc",
- # the 'AtomSourceName<n>' value "atom<n>.c", and the 'AtomRsrcID_<n>'
- # value with the appropriate resource type and ID for your action
- # atom code resource. Be sure to specify the action atom resource
- # type and ID with the identical values in your source ( .r ) file
- # for the installer script.
-
- # NOTE: The format2 action atom includes the external routines library
- # so the section in this makefile that creates the format2 action atom
- # is different that the sections that create the format0 and format1
- # action atoms.
-
- ActionAtomFileName0 = myActionAtom_0.rsrc
- AtomSourceName0 = atom0.c
- AtomRsrcID_0 = infn=9000
-
- ActionAtomFileName1 = myActionAtom_1.rsrc
- AtomSourceName1 = atom1.c
- AtomRsrcID_1 = infn=9001
-
- ActionAtomFileName2 = myActionAtom_2.rsrc
- AtomSourceName2 = atom2.c
- AtomRsrcID_2 = infn=9002
-
- ProgressAtomFileName = ProgressAtom.rsrc
- ProgressAtomSourceName = ProgressAtom.c
- ProgressAtomRsrcID = infn=9003
-
-
-
- "{debugScriptName}" ƒ "{scriptName}"
- Duplicate -y "{scriptName}" "{scriptName} w/ Debugger"
- Rez -m "{InstallerDebuggerDir}Installer Debugger.r" -append -o "{scriptName} w/ Debugger"
-
- "{scriptName}" ƒ "{scriptName}.r" "{ActionAtomFileName0}" "{ActionAtomFileName1}" "{ActionAtomFileName2}" "{ProgressAtomFileName}"
- set theTime "'`date -d -s` 12:00:00 PM'"
- Rez "{scriptName}.r" -o "{scriptName}" -t 'kajr' -c 'kajr' -i "{InstallerRIncDir}"
- SetFile -a b -d {theTime} "{scriptName}"
- "{ScriptCheckDir}ScriptCheck" "{scriptName}" -h -d -a
- SetFile -m {theTime} "{scriptName}"
-
- "{ActionAtomFileName0}" ƒ "{AtomSourceName0}"
- C -r -b "{AtomSourceName0}" -i "{InstallerCIncDir}"
- Link -ra =resPurgeable -rt "{AtomRsrcID_0}" -rn -m ACTIONATOMFORMAT0 -t rsrc -c RSED -sg Main=STDCLIB ∂
- "{AtomSourceName0}.o" ∂
- # "{Libraries}Interface.o" ∂
- # "{CLibraries}StdCLib.o" ∂
- -o "{ActionAtomFileName0}"
-
- "{ActionAtomFileName1}" ƒ "{AtomSourceName1}"
- C -r -b "{AtomSourceName1}" -i "{InstallerCIncDir}"
- Link -ra =resPurgeable -rt "{AtomRsrcID_1}" -rn -m ACTIONATOMFORMAT1 -t rsrc -c RSED -sg Main=STDCLIB ∂
- "{AtomSourceName1}.o" ∂
- # "{Libraries}Interface.o" ∂
- # "{CLibraries}StdCLib.o" ∂
- -o "{ActionAtomFileName1}"
-
- # this example needs the external lib with all the installer functions
- # in this case specifically to print progress information from within
- # the format2 action atom to the Wasabi Installer Debugger
- "{ActionAtomFileName2}" ƒ "{AtomSourceName2}" "ExternalLib.o"
- C -r -b "{AtomSourceName2}" -i "{InstallerCIncDir}"
- Link -ra =resPurgeable -rt "{AtomRsrcID_2}" -rn -m ActionAtomFormat2 -t rsrc -c RSED -sg Main=STDCLIB ∂
- "{AtomSourceName2}.o" ∂
- "{Libraries}Interface.o" ∂
- "ExternalLib.o" ∂
- -o "{ActionAtomFileName2}"
-
-
-
- # this example needs the external lib with all the installer functions
- # in this case specifically display progress in the installer dialog
- # from a format2 action atom
- "{ProgressAtomFileName}" ƒ "{ProgressAtomSourceName}" "ExternalLib.o"
- C -r -b "{ProgressAtomSourceName}" -i "{InstallerCIncDir}"
- Link -ra =resPurgeable -rt "{ProgressAtomRsrcID}" -rn -m ActionAtomFormat2 -t rsrc -c RSED -sg Main=STDCLIB ∂
- "{ProgressAtomSourceName}.o" ∂
- "{Libraries}Interface.o" ∂
- "ExternalLib.o" ∂
- -o "{ProgressAtomFileName}"
-
-
- # • external library stuff ( contains the 'glue' routines for Installer callback routines, etc. )
-
- InstallerCSrcDir = :::DeveloperInterfaces:CSources:
-
- # This external library contains all the cool installer function stuff.
- # For simplicity's sake we are going ahead and compiling the complete
- # library containing all the installer functions. You can, once compiled
- # link this library in to any action atom, search proc, action handler, etc.
- # Be careful if you remove any of the files from this library to give the
- # library a unique name, so as not to confuse the complete library with
- # the customized/minimized library. All the files that go into making the
- # external library are contained in 'ExtLibraryRoutines.c' in this folder.
- "ExternalLib.o" ƒƒ "ExtLibraryRoutines.c"
- C -r -b -i "{InstallerCSrcDir}" -i "{InstallerCIncDir}" "ExtLibraryRoutines.c"
- Lib -d -mf -o "ExternalLib.o" "ExtLibraryRoutines.c.o"
-
-